package entidades;



import coneccion.Coneccion;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.Statement;
import java.util.ArrayList;
import java.sql.Date;
import java.util.List;


/**
 *
 * @author DYE
 */
public class prueba {
    
    public int idPrueba;
    public int idParticipante;
    public Date fecha;
        
    /*
     * METODOS
     * SelectAllPrueba()
     * SelectPruebaByIdParticipante(int id)
     * SelectPruebaByIdPrueba(int id)
     * SelectByfecha(Date fech)
     * InsertarPrueba(int idPart,Date fechaP)
     */

    public Date getFecha() {
        return fecha;
    }

    public void setFecha(Date fecha) {
        this.fecha = fecha;
    }

    public int getIdParticipante() {
        return idParticipante;
    }

    public void setIdParticipante(int idParticipante) {
        this.idParticipante = idParticipante;
    }

    public int getIdPrueba() {
        return idPrueba;
    }

    public void setIdPrueba(int idPrueba) {
        this.idPrueba = idPrueba;
    }

    
    
    
    public List<prueba> SelectAllPrueba()
    {
        prueba prue;
        List<prueba> listPrueba= new ArrayList<prueba>();
        ResultSet rs=null;
        try
        {
        Coneccion cn=new Coneccion();
        
        rs=cn.connect().executeQuery("select * from prueba");
        
        while(rs.next())
        {
            prue=new prueba();
            prue.setIdPrueba(rs.getInt("idPrueba"));
            prue.setIdParticipante(rs.getInt("PARTICIPANTE_idParticipante"));
            prue.setFecha(rs.getDate("fecha"));
            
            listPrueba.add(prue);
        }
        rs.close();
        cn.getCon().close();

        }catch(Exception ex)
         {
               System.out.println(ex.toString());
         }
        return listPrueba;
    }
    
    
    public List<prueba> SelectPruebaByIdParticipante(int id)
    {
        prueba prue;
        List<prueba> listPrueba= new ArrayList<prueba>();
        ResultSet rs=null;
        try
        {
        Coneccion cn=new Coneccion();
        
        rs=cn.connect().executeQuery("select * from prueba where PARTICIPANTE_idParticipante="+id);
        
        while(rs.next())
        {
            prue=new prueba();
            prue.setIdPrueba(rs.getInt("idPrueba"));
            prue.setIdParticipante(rs.getInt("PARTICIPANTE_idParticipante"));
            prue.setFecha(rs.getDate("fecha"));
            
            listPrueba.add(prue);
        }
        rs.close();
        cn.getCon().close();

        }catch(Exception ex)
         {
               System.out.println(ex.toString());
         }
        return listPrueba;
    }
    
    public prueba SelectPruebaByIdPrueba(int id)
    {
        prueba prue=null;
        
        ResultSet rs=null;
        try
        {
        Coneccion cn=new Coneccion();
        
        rs=cn.connect().executeQuery("select * from prueba where idPrueba="+id);
        
        
        rs.next();
        
            prue=new prueba();
            prue.setIdPrueba(rs.getInt("idPrueba"));
            prue.setIdParticipante(rs.getInt("PARTICIPANTE_idParticipante"));
            prue.setFecha(rs.getDate("fecha"));
            
        
        rs.close();
        cn.getCon().close();

        }catch(Exception ex)
         {
               System.out.println(ex.toString());
         }
        return prue;
    }
    
    
    
    public List<prueba> SelectByfecha(Date fech)
    {
        prueba prue;
        List<prueba> listPrueba= new ArrayList<prueba>();
        ResultSet rs=null;
        try
        {
        Coneccion cn=new Coneccion();
        
        rs=cn.connect().executeQuery("select * from prueba where fecha="+fech);
        
        while(rs.next())
        {
            prue=new prueba();
            prue.setIdPrueba(rs.getInt("idPrueba"));
            prue.setIdParticipante(rs.getInt("PARTICIPANTE_idParticipante"));
            prue.setFecha(rs.getDate("fecha"));
            
            listPrueba.add(prue);
        }
        rs.close();
        cn.getCon().close();

        }catch(Exception ex)
         {
               System.out.println(ex.toString());
         }
        return listPrueba;
    }
    
    public void InsertarPrueba(int idPart,Date fechaP)
    {
        try
        {
            Coneccion cn=new Coneccion();
            Statement st=cn.connect();
            
            prueba in=new prueba();
            
            PreparedStatement ps=cn.connect("insert into prueba (PARTICIPANTE_idParticipante, fecha) "+"values(?,?)");

            ps.setInt(1, idPart);
            ps.setDate(2, fechaP);
            
            ps.executeUpdate();

            st.close();

            cn.getCon().close();
        }
        catch (Exception e)
        {
            System.out.println(e.toString());
        }
    }
    
}
